home *** CD-ROM | disk | FTP | other *** search
/ TeX 1995 July / TeX CD-ROM July 1995 (Disc 1)(Walnut Creek)(1995).ISO / dviware / dvi2xx / config.h < prev    next >
C/C++ Source or Header  |  1994-04-24  |  5KB  |  256 lines

  1. #define USEPXL
  2.  
  3. /*
  4.  *  default font path
  5.  *  can be overridden by environment variable TEXPXL
  6.  *  or -a command line option
  7.  *  popular choice:
  8.  * #define  FONTAREA       "/usr/local/lib/tex/fonts/pk"
  9.  */
  10. #ifndef FONTAREA
  11. #ifdef vms
  12. #define FONTAREA    "tex$pkdir:"
  13. #else
  14. #ifdef _AMIGA
  15. #define FONTAREA    "TeX:pk"
  16. #else
  17. #define FONTAREA    "/usr/local/lib/tex/pk300"
  18. #endif
  19. #endif
  20. #endif
  21.  
  22. /* if DO_SUBDIRECTORIES is specified, search to this depth */
  23. #ifndef MAX_SUBDIR_SEARCH_DEPTH 
  24. #define MAX_SUBDIR_SEARCH_DEPTH 10
  25. #endif
  26.  
  27. /* 
  28.  * if your LaserJet II P or LaserJet III or LaserJet 2000
  29.  * complains about not enough memory, you might try to reduce 
  30.  * the value below or uncomment to use the default settings
  31.  */  
  32. #ifdef LJ2P
  33. #define  MAX_FONTS_PER_PAGE 255         /* maximum number of fonts per page */
  34. #endif
  35.  
  36.  
  37. /* Timing is not very portable.... if you have troubles, use
  38.  * -DNO_TIMING in the Makefile
  39.  */
  40.  
  41. #ifdef u3b2
  42. #define NO_TIMING
  43. #endif
  44. #ifdef _AMIGA
  45. #define NO_TIMING
  46. #endif
  47.  
  48. #ifndef NO_TIMING
  49. #define TIMING
  50. #endif
  51.  
  52. /*
  53.  * per default use MakeTexPK in unix environments unless it is not wanted 
  54.  */
  55. #ifdef unix
  56. #ifndef MAKETEXPK
  57. /* name of the program which is called to generate missing pk files
  58.  */
  59. #define MAKETEXPK "MakeTeXPK"
  60. #endif
  61. #endif
  62.  
  63. #ifdef _AMIGA
  64. #ifndef MAKETEXPK
  65. /* name of the program which is called to generate missing pk files
  66.  */
  67. #define MAKETEXPK "MakeTeXPK"
  68. #endif
  69. #endif
  70.  
  71.  
  72.  
  73. #ifdef NO_MAKETEXPK
  74. #undef MAKETEXPK
  75. #endif
  76.  
  77. /*
  78.  * assure that LJ2P is defined when LJ4 is defined;
  79.  * compile with support for LJ4's resident fonts
  80.  */
  81. #ifdef LJ4
  82. #define LJ2P
  83. #define LJ_RESIDENT_FONTS
  84. #endif
  85.  
  86. /*
  87.  * assure that LJ2 is defined when LJ2P is defined
  88.  */
  89. #ifdef LJ2P
  90. #ifndef LJ2
  91. #define LJ2
  92. #endif
  93. #endif
  94.  
  95. /*
  96.  * assure that LJ is defined when LJ2 of LJ4 is defined
  97.  */
  98. #if defined(LJ2)
  99. #ifndef LJ
  100. #define LJ
  101. #endif
  102. #endif
  103.  
  104. /*
  105.  * assure that IBM3812 is not defined when LJ is defined
  106.  */ 
  107. #ifdef LJ
  108. #ifdef IBM3812
  109. #undef IBM3812
  110. #endif
  111. #endif
  112.  
  113. #ifdef LJ_RESIDENT_FONTS
  114. #ifndef DEFAULT_TFM_PATH
  115. #define DEFAULT_TFM_PATH   "/usr/local/lib/tex/fonts"
  116. #endif
  117. #endif
  118.  
  119.  
  120. #define  TRUE      (bool) 1
  121. #define  FALSE     (bool) 0
  122. #define  UNKNOWN     -1
  123.  
  124. #define  STRSIZE         255     /* stringsize for file specifications  */
  125.  
  126. typedef  char    bool;
  127.  
  128. #ifdef hpux
  129. typedef  char    signed_char;
  130. #else
  131. #ifdef vms
  132. typedef  char    signed_char;
  133. #else
  134. #ifdef u3b2
  135. typedef  short signed_char;
  136. #else
  137. /* this is the default !! */
  138. typedef  signed char    signed_char; 
  139. #endif 
  140. #endif
  141. #endif
  142.  
  143. #if !defined(u3b2) && !defined(alpha)
  144. #define  ARITHMETIC_RIGHT_SHIFT
  145. #endif
  146.  
  147. #ifdef alpha
  148. #define long int
  149. #endif
  150.  
  151. bool findfile();
  152.  
  153.  
  154. /* 
  155.  * maximal number of characters in font file
  156.  * #define  LASTFNTCHAR  127        7-bit classic version
  157.  * #define  LASTFNTCHAR  255        8-bit fonts
  158.  */
  159.  
  160. #ifdef SEVENBIT 
  161. #define LASTFNTCHAR 127
  162. #else
  163. #define LASTFNTCHAR  255
  164. #endif
  165.  
  166.  
  167.  
  168. /* this information is needed in findfile.c and dvi2xx.c, NO CUSTOMIZATION */
  169. #ifdef LJ
  170. #ifdef LJ4
  171. #define RESOLUTION    600
  172. /*#define MFMODE "hplf"*/  /* mode definition for metafont */
  173. #define MFMODE "CanonCX"   /* mode definition for metafont */
  174. #else
  175. #define RESOLUTION    300
  176. #define MFMODE "imagen"    /* mode definition for metafont */
  177. #endif
  178. #endif
  179.  
  180. #ifdef IBM3812
  181. #define RESOLUTION    240
  182. #define MFMODE "IBMThreeEightOneTwo"    /* mode definition for metafont */
  183. #endif
  184.  
  185.  
  186. #ifdef unix
  187. #define OS "Unix"
  188. #define READ_BINARY     "r"
  189. #define WRITE_BINARY    "w"
  190. #define labs(x) abs(x)
  191. #endif
  192. #ifdef MSDOS
  193. #define OS "MS-DOS"
  194. #define READ_BINARY     "rb"
  195. #define WRITE_BINARY    "wb"
  196. #define MSC5
  197. #endif
  198. #ifdef OS2
  199. #define OS "OS/2"
  200. #define READ_BINARY     "rb"
  201. #define WRITE_BINARY    "wb"
  202. #define MSC5
  203. #endif
  204.  
  205. #ifdef vms
  206. #define OS "VMS"
  207. #include <ssdef.h>
  208. #include <stsdef.h>
  209. #define ftell vms_ftell            /* use some external routines, because */
  210. #define fseek vms_fseek            /* of some bugs in the VMS run time    */
  211. #define getchar vms_getchar        /* library */
  212. #define getenv vms_getenv
  213. #define ungetc vms_ungetc
  214. #define getname vms_getname
  215. #define READ_BINARY     "rb"
  216. #define WRITE_BINARY    "wb","rfm=fix","bls=512","mrs=512" /* fixed records */
  217. #define labs(x) abs(x)
  218. #endif
  219.  
  220. #ifdef _AMIGA
  221. #define OS "Amiga"
  222. #define READ_BINARY     "r"
  223. #define WRITE_BINARY    "w"
  224. #ifdef __SASC
  225. #define sys_errlist __sys_errlist
  226. #include <stdlib.h>
  227. #endif
  228. #endif
  229.  
  230.  
  231. /* Information returned by tfm_read_info. */
  232. typedef struct {
  233.   /* These string lengths are imposed by the TFM format. Either of these
  234.      values may be the empty string.  */
  235.   char coding_scheme[40];
  236.   char family[20];
  237.    
  238.   /* The second fontdimen. */
  239.   unsigned interword;
  240.    
  241.   /* These values are what will work to select the font in PCL. If this
  242.      TFM file doesn't have the `KN' extensions (distinguishable by the
  243.      family == "HPAUTOTFM"). */
  244. #define SPACING_FIXED 0
  245. #define SPACING_PROPORTIONAL 1
  246.   unsigned spacing;
  247.   int weight;
  248.   unsigned style;
  249.   unsigned typeface_id;
  250.  
  251.   /* TFM files can always have 256 characters, even if we're using the
  252.      old pixel format that only supports 128. The values are fix-words
  253.      scaled by the design size; i.e., straight from the TFM file. */
  254.   long widths[256];
  255. } tfm_info_type;
  256.